package com.mate.cloud.redis.service;

import com.mate.cloud.redis.constants.RedisKeyConstants;
import com.mate.cloud.redis.dal.model.City;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Collection;
import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author astupidcoder
 * @since 2021-06-26
 */
public interface ICityService extends IService<City> {


    City queryCityById(Integer id);


    public City queryCityById(String key, Integer cityId);
    /**
     * 批量获取多个城市缓存
     *
     * @param cityIds cityIds 城市 ID 集合（不可为 null 或空）
     * @return 城市对象列表（顺序与输入 ID 一致，无缓存的位置为 null）
     */
    List<City> batchGetCityCache(List<Integer> cityIds);


    /**
     * 全量获取所有城市缓存（通过 Key 模板匹配所有符合的 Key）
     *
     * @param
     * @return @return 所有城市缓存列表（无缓存时返回空列表）
     * @throws
     * @author MI
     * @date 2025/8/30 19:57
     */
    List<City> getAllCityCache();
}
